home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 016a / x10_xa04.zip / XA.TXT < prev   
Text File  |  1991-08-03  |  55KB  |  1,310 lines

  1.   
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.                             XA Command Interpreter
  17.  
  18.                                  Version 01.04
  19.  
  20.                                   August 1991
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.                       Copyright 1991 by Bruce Christensen
  51.                               All rights reserved.
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.                               Table of Contents
  63.  
  64.      1  Introduction....................................................  3
  65.  
  66.      2  Installation....................................................  4
  67.  
  68.      3  XA - the X10 Command Interpreter................................  4
  69.  
  70.      4  XA Tokens.......................................................  7
  71.  
  72.      4.1  XA Token Reference............................................  7
  73.  
  74.      4.2  Tokens in detail..............................................  8
  75.  
  76.      4.2.1  Action Tokens (ON, OFF, DIM)................................  8
  77.  
  78.      4.2.2  Module Address Tokens (HOUSE, UNIT, A1...P16)............... 10
  79.  
  80.      4.2.3  Coordinate Tokens (LATITUDE, LONGITUDE, TIMEZONE)........... 11
  81.  
  82.      4.2.4  Clock Tokens (SYNCHRONIZE X10, PC, EXACT)................... 12
  83.  
  84.      4.2.5  Day Tokens (SUNDAY...SATURDAY, WEEKDAYS, WEEKENDS, etc.) ... 13
  85.  
  86.      4.2.6  Date Tokens (DATE, THRU).................................... 13
  87.  
  88.      4.2.7  Time Tokens (TIME, SUNRISE/SET, OFFSET, NORMAL,
  89.                           SECURITY, RANDOM)............................. 15                                             15
  90.  
  91.      4.2.8  Misc Tokens (BASECODE, PORT, DEFINE, EVENT, CLEAR, DIAGNOSE,
  92.                MONITOR, IRQ, IO, LOG, ERASE)............................ 17
  93.  
  94.      5  Command Files................................................... 20
  95.  
  96.      6  Monitoring and Logging Events................................... 21
  97.  
  98.      7  POWERUP Utility................................................. 23
  99.  
  100.      8  License Agreement and Registration.............................. 24
  101.  
  102.  
  103.  
  104.   XA Command Interpreter (Version 1.04)                               Page  3
  105.  
  106.  
  107. 1) Introduction
  108.  
  109.      This floppy contains a set of extremely useful DOS utilities for the
  110.      X10 Computer Interface (CP290). These utilities are being marketed
  111.      under the try-before-you-buy (Shareware) concept to allow you a
  112.      complete test of the product before you are required to register.
  113.      Shareware provides you with low-cost, high-performance software and
  114.      support. Many features have been added to this product based on input
  115.      from users. Registration will provide you with the latest updates, and
  116.      an opportunity to voice your suggestions for new product features. See
  117.      Section 8.0 - License Agreement and Registration, also the
  118.      Registration form for more details.
  119.  
  120.      To take full advantage of the features in this package, you
  121.      should connect your computer to an X10-compatible Appliance module.
  122.      This way, the combination of the X10 hardware and the XA software can
  123.      take "home automation" to a higher level. From now on, you can have
  124.      the CP-290 update itself on once-per-week basis. These updates may
  125.      include events that may be scheduled days, months, even years in
  126.      advance.
  127.  
  128.      There are (2) two programs distributed on this disk. Briefly,
  129.  
  130.           A) XA - X10 Command Interpreter.   (XA.EXE)
  131.                This utility reads and downloads commands to the CP290 in
  132.                two modes. The first mode is from command line arguments,
  133.                ie, from the DOS prompt. The second mode can read an entire
  134.                file of commands. These commands can be either timed events
  135.                or direct commands.
  136.  
  137.                Besides these functions, the interpreter has several
  138.                features not found with the original X10 software. Some of
  139.                these features are:
  140.  
  141.                     1) Exact Sunrise/Sunset times based on the latitude,
  142.                        longitude, and timezone of your city.
  143.  
  144.                     2) Request any event to occur days, months, even years
  145.                        from now. XA expands X10's time base by allowing you
  146.                        to program an event for any day in the future, or
  147.                        you can schedule an event to occur between two
  148.                        defined dates.
  149.  
  150.                     3) Synchronize your PC's clock with the time maintained
  151.                        by the CP-290, or synchronize the CP-290 clock with the
  152.                        time maintained by your PC. These settings can be
  153.                        made down to the second, so both your PC and CP-290
  154.                        are exactly synchronized.
  155.  
  156.                     4) Monitor events as the CP-290 executes them, and
  157.                        optionally log them to a file.
  158.  
  159.                     5) The ability to change the base housecode without
  160.                        losing all the data already stored in the interface.
  161.  
  162.   XA Command Interpreter (Version 1.04)                               Page  4
  163.  
  164.                     6) String substitution in the command file allows you
  165.                        to equate a device (FAMILY_ROOM_LAMP) with its module
  166.                        address (A3).
  167.  
  168.                     7) Comments are allowed in the file to properly document
  169.                        its content.
  170.  
  171.           2) POWERUP - AUTOEXEC Time Check Utility
  172.                This utility is provided for those of you that control your
  173.                computer with an X10 Appliance module. When placed in your
  174.                AUTOEXEC.BAT file, this utility compares the current PC time
  175.                with a pre-set time "window" that you define. During your
  176.                computers powerup, if the PC's time falls within this
  177.                "window", it will return an errorlevel of 1. This errorlevel
  178.                can then be checked and used to perform any number of
  179.                functions you desire. For instance, X10 turns my computer on
  180.                at 3:00 AM every Sunday morning. POWERUP checks the
  181.                computers time and then invokes a complete optimization and
  182.                backup of my hard drives as well as downloads updated times
  183.                to the X10 Computer Interface. There will be more on this
  184.                subject in Section 7 - Powerup Utility.
  185.  
  186.  
  187.  
  188. 2) Installation
  189.  
  190.      You probably want to copy the contents of this floppy to the same
  191.      drive and directory in which your X10 software resides. It's also a
  192.      good idea to include this drive and directory within your PATH
  193.      statement of the AUTOEXEC.BAT file.
  194.  
  195.           Ex: SET PATH=C:\DOS;D:\X10;...
  196.  
  197.      You should set the XA environment variable to the drive and directory
  198.      of your command files. This also can be placed in your AUTOEXEC.BAT
  199.      file.
  200.  
  201.           Ex: SET XA=D:\X10
  202.  
  203.      (See the AUTOEXEC.BAT supplied with this package for an example).
  204.  
  205.  
  206.  
  207. 3) XA - The X10 Command Interpreter
  208.  
  209.      As stated earlier, XA can operate on commands from the DOS command
  210.      line, or from a file. In either mode, XA uses several options to alter
  211.      its operation. The XA command has the following form:
  212.  
  213.      ┌───────────────────────────────────────────────────────────────────┐
  214.      │   XA [f=filename] [c=comm port] [i=irq] [o=io_addr] ["commands"]  │
  215.      │      [-e] [-s] [+m] [+h]                                          │
  216.      └───────────────────────────────────────────────────────────────────┘
  217.  
  218.   XA Command Interpreter (Version 1.04)                               Page  5
  219.      The options may appear in any order, but the presence of some of these
  220.      options negates other options.
  221.  
  222.           [f=filename]   - this is the name of the file containing the
  223.                            commands to be interpreted by XA. To use XA in
  224.                            its file mode, you would type:
  225.  
  226.                               XA f=filename
  227.  
  228.                            The default file name is XA.CMD. If you want to
  229.                            use the default file, you do not have to specify
  230.                            the filename - just type: XA
  231.  
  232.           [c=comm port]  - this allows you to select the serial port for
  233.                            communications with the interface. You may
  234.                            select ports 1...4. For example, if your CP290
  235.                            is connected to COM3:
  236.  
  237.                               XA c=3
  238.  
  239.                            The default port is 1. To use the default, you
  240.                            do not have to specify the port number - just
  241.                            type:
  242.  
  243.                               XA
  244.  
  245.                            See Section 4.2.7 - Miscellaneous tokens for a
  246.                            different way to set the comm port within a
  247.                            command file. Also, see the next two options if
  248.                            your comm port uses a different IRQ level, or a
  249.                            different IO port address.
  250.  
  251.           [i=irq]        - use this option if your communications port uses
  252.                            a different IRQ level than what is "standard"
  253.                            (see Section 4.2.7 - PORT COMx for the default
  254.                            assignments). The default IRQ level is 4. If
  255.                            your serial port uses IRQ 5, then include:
  256.  
  257.                               XA i=5
  258.  
  259.           [o=io_addr]    - this option allows you to select a different IO
  260.                            address from the default 3F8 hex. If your serial
  261.                            port is setup for 2E8 hex, then use:
  262.  
  263.                               XA o=2E8
  264.  
  265.   XA Command Interpreter (Version 1.04)                               Page  6
  266.           ["commands"]   - "commands" consist of several tokens (huh? - see
  267.                            Section 4 - Tokens) that describe an event of
  268.                            direct command. For example:
  269.  
  270.                               XA "A1 ON"
  271.  
  272.                            In the above example, A1 and ON are tokens.
  273.                            Together they form a single command. Multiple
  274.                            commands may appear in the command line, but
  275.                            they must be enclosed by quotation marks (" ").
  276.                            The next example shows the use of multiple
  277.                            commands to create a flashing effect:
  278.  
  279.                               XA "A1 ON" "A1 OFF" "A1 ON" "A1 OFF"
  280.  
  281.                            One other note, the presence of any commands on
  282.                            the command line will nullify the use of a file.
  283.                            Therefore in the next example, the XA utility
  284.                            will ignore the file request and process just
  285.                            the commands:
  286.  
  287.                               XA f=null.cmd "A1 A2 A3 A4 ON"
  288.  
  289.           [-e]           - this option is used to prevent any
  290.                            communications to the interface. Use this option
  291.                            only when you want to validate commands in a
  292.                            file.
  293.  
  294.           [-s]           - this option is used to prevent sorting the
  295.                            commands based on their EVENT numbers (see
  296.                            EVENTS described in Section 4.2.8 -
  297.                            Miscellaneous tokens).
  298.  
  299.           [+m]           - this option will monitor the comm port for any
  300.                            events reported by the CP-290. Press the <ESC>
  301.                            key to terminate. Note: You can run this as a
  302.                            background task in Windows 3.0 (386 enhanced
  303.                            mode) to avoid tying up your computer.
  304.  
  305.           [+l]           - this option will append any monitoring
  306.                            information to the file XA.LOG. The [+m] option
  307.                            must also be specified for this command to work.
  308.  
  309.           [+h]           - displays a brief summary of the options
  310.                            described above.
  311.  
  312.  
  313.   XA Command Interpreter (Version 1.04)                               Page  7
  314. 4) XA Tokens
  315.  
  316.      What are tokens?
  317.      A token is to a command as a word is to a sentence. Individual words
  318.      are constructed to form a complete sentence - tokens are constructed
  319.      to form complete commands. This section will describe each token that
  320.      is recognized by the interpreter. Often, tokens may appear
  321.      anywhere in the command. For example, the command
  322.  
  323.           XA "A1 ON"    may also be constructed as
  324.           XA "ON A1"
  325.  
  326.      In other instances, tokens must sometimes be arranged in groups, and
  327.      their order is important. For example, the command to set your PC's
  328.      internal clock to the time that is maintained by the CP290 is:
  329.  
  330.           XA "SYNCHRONIZE PC"      <---This is legal
  331.  
  332.      If the tokens SYNCHRONIZE and PC were reordered as in the following
  333.      command:
  334.  
  335.           XA "PC SYNCHRONIZE"      <---This is illegal
  336.  
  337.      The interpreter would respond with a message indicating the token it
  338.      did not recognize along with the line number it appeared in. Then it
  339.      displays the entire line that contains the error:
  340.  
  341.           WARNING: Unrecognized token "PC" in line 1.
  342.                    PC SYNCHRONIZE
  343.  
  344.      Therefore, throughout this documentation any tokens that must be
  345.      arranged in a certain order will be contained in curly braces {..}.
  346.      Other tokens may be optional and will contained in parentheses (..).
  347.  
  348.  
  349. 4.1) Token Reference
  350.  
  351.      The following is a list of available tokens. Tokens that must be
  352.      arranged in a certain order will be contained in curly braces {..}.
  353.      Other tokens that may be optional will be denoted in parentheses (..).
  354.      All these tokens will discussed in more detail in the next section:
  355.  
  356.      4.1.1 Action tokens -
  357.           ON             - turns ON the specified modules.
  358.           OFF            - turns OFF the specified modules.
  359.           {DIM %%}       - DIM to a % (percentage) level of brightness.
  360.  
  361.      4.1.2 Module address tokens
  362.           {HOUSE x}      - module HOUSEcode A...P
  363.           {UNIT z}       - module UNITcode 1...16, ALL
  364.           A1...P16       - HOUSE UNIT combined
  365.  
  366.      4.1.3 Coordinate tokens:
  367.           {LATITUDE d m} - your LATITUDE in Degrees and Minutes
  368.           {LONGITUDE d m}- your LONGITUDE in Degrees and Minutes
  369.           {TIMEZONE x}   - your TIMEZONE (Standard/Daylight Savings time)
  370.  
  371.   XA Command Interpreter (Version 1.04)                               Page  8
  372.  
  373.      4.1.4 Clock tokens:
  374.           {SYNCHRONIZE PC (EXACT)}  - set PC time based on X10 time
  375.           {SYNCHRONIZE X10 (EXACT)} - set X10 time based on PC time
  376.  
  377.      4.1.5 Day tokens:
  378.           SUNDAY,    SUN - Specific day for event to occur
  379.           MONDAY,    MON -     "
  380.           TUESDAY,   TUE -     "
  381.           WEDNESDAY, WED -     "
  382.           THURSDAY,  THU -     "
  383.           FRIDAY,    FRI -     "
  384.           SATURDAY,  SAT -     "
  385.           EVERYDAY             - Event occurs everyday
  386.           TODAY                - Event occurs once today only
  387.           TOMORROW             - Event occurs once tomorrow only
  388.           WEEKDAYS,  WEEKDAY   - Event occurs only on weekdays
  389.           WEEKENDS,  WEEKEND   - Event occurs only on weekends
  390.  
  391.    4.1.6 Specific Date tokens:
  392.           {DATE mm/dd/yyyy}    - Event occurs on specified date
  393.           {DATE mm/dd/yyyy THRU mm/dd/yyyy}
  394.                                - Event occurs between two dates
  395.  
  396.      4.1.7 Time tokens:
  397.           {TIME hh:mm AM} - Schedule event time
  398.           {TIME hh:mm PM}
  399.           SUNRISE         - Calculate time of sunrise
  400.           SUNSET          - Calculate time of sunset
  401.           {OFFSET +/-mm}  - Event + or - 60 mins of programmed time (dawn)
  402.           NORMAL          - Event occurs at specified time
  403.           SECURITY,RANDOM - Event occurs within the hour of programmed time
  404.  
  405.      4.1.8 Miscellaneous tokens:
  406.           {BASECODE x}   - change house BASECODE of interface to A...P
  407.           {PORT COMx}    - send commands via PORT COM1..4
  408.           {IRQ x}        - customize IRQ level for port.
  409.           {IO x}         - customize port address (must be in hex).
  410.           {DEFINE x z}   - substitute string 'x' for string 'z'
  411.           {EVENT xxx}    - Place event xxx in a known location of CP290 memory
  412.           DIAGNOSE       - Invoke CP290 self-test routine
  413.           MONITOR        - Watch events as the CP290 executes them
  414.           LOG            - Append event info to file XA.LOG
  415.           {CLEAR EVENT xxx} - Clear (delete) event xxx from CP290 memory
  416.           ERASE          - Erase ALL events from CP290 memory
  417.  
  418. 4.2) Tokens in Detail
  419.  
  420.      4.2.1 Action Tokens
  421.  
  422.           ON
  423.                This token informs the interface to turn ON the selected
  424.                modules.
  425.  
  426.                Example: XA "A1 ON"
  427.  
  428.  
  429.   XA Command Interpreter (Version 1.04)                               Page  9
  430.  
  431.           OFF
  432.                This token informs the interface to turn OFF the selected
  433.                modules.
  434.  
  435.                Example: XA "A1 OFF"
  436.  
  437.  
  438.           {DIM %%}
  439.                These two tokens specify the intensity level of the selected
  440.                lamp module or wall switch module. The modules will turn on,
  441.                brighten to full intensity, then dim to the percentage
  442.                specified in the second token. There are 16 different
  443.                brightness levels available, the percentage you choose
  444.                (0 to 100) is mapped to one of these levels. See Note 3
  445.                below for compatibility issues with X10.EXE.
  446.  
  447.                Example: XA "A1 DIM 50"
  448.  
  449.  
  450.  
  451.           Notes:
  452.  
  453.           1) Only one token in this category should appear in a command. If
  454.              two or more of these tokens appear, only the last one will be
  455.              acted on. For example:
  456.  
  457.                XA "A1 ON OFF" - will be interpreted as:
  458.                XA "A1 OFF"
  459.  
  460.              If you were trying to flash the lights, the proper way to
  461.              perform this action is:
  462.  
  463.                XA "A1 ON" "A1 OFF"
  464.  
  465.           2) You may activate as many modules as you want in a single
  466.              command providing these modules share the same HOUSE code:
  467.  
  468.                XA "A1 A2 A3 A4 A5 A6 ON"
  469.  
  470.              To activate modules with different HOUSE codes, use separate
  471.              commands:
  472.  
  473.                XA "A1 A2 A3 ON" "B1 B2 ON" "C1 OFF"
  474.  
  475.           3) If you download a timed event that contains the DIM token, the
  476.              X10 interface program (X10.EXE) reports the DIM level @ 90%,
  477.              even though you may have the level at some other intensity.
  478.              The reason for this discrepency is because X10.EXE stores a
  479.              mirror image of the data it sends to the CP-290 (along with
  480.              some other information) in a file called X10.DAT. Eventually,
  481.              when the exact format of this file is determined, XA will be
  482.              able to create a similar file so that the proper levels
  483.              will be displayed by X10.EXE. Any of you hackers out there
  484.              that know this format, please step forword.
  485.  
  486.  
  487.   XA Command Interpreter (Version 1.04)                               Page 10
  488.  
  489.      4.2.2 Module Address tokens
  490.  
  491.           {HOUSE x}
  492.                These two tokens specify the HOUSE code of the module you
  493.                want to select. There are 16 HOUSE codes available, lettered
  494.                A through P. This method of selecting address requires the
  495.                use of the UNIT token. Only one HOUSE token should appear in
  496.                a command.
  497.  
  498.  
  499.           {UNIT y}
  500.           {UNIT ALL}
  501.                These two tokens specify the UNIT code of the module you
  502.                want to select. There are 16 UNIT codes available, numbered
  503.                1 through 16. Specifying UNIT ALL operates on all 16 modules
  504.                addressed by the HOUSE token. This method of module
  505.                addressing requires the use of the HOUSE token.
  506.  
  507.                Examples: XA "HOUSE A UNIT 1 ON"   or,
  508.                          XA "UNIT 1 HOUSE A ON"
  509.  
  510.                Multiple UNITs may appear in a single command.
  511.  
  512.                Example:  XA "HOUSE A UNIT 1 UNIT 2 UNIT 3 ON"
  513.  
  514.                Turn off all units on HOUSE P.
  515.  
  516.                Example: XA "HOUSE P UNIT ALL OFF"
  517.  
  518.           A1...P16
  519.                This is a shortcut method of specifying both HOUSE and UNIT
  520.                tokens. The house code must appear first, followed by the
  521.                unit code. Specifying ALL is not permitted.
  522.  
  523.                Example:  XA "A1 ON" "P16 OFF"
  524.  
  525.           Notes:
  526.  
  527.           1) You may activate as many modules as you want in a single
  528.              command providing these modules share the same HOUSE code:
  529.  
  530.                XA "A1 A2 A3 A4 A5 A6 ON"
  531.  
  532.              To activate modules with different HOUSE codes, use separate
  533.              commands:
  534.  
  535.                XA "A1 A2 A3 ON" "B1 B2 ON" "C1 OFF"
  536.  
  537.  
  538.   XA Command Interpreter (Version 1.04)                               Page 11
  539.      4.2.3 Coordinate tokens
  540.  
  541.           This group of tokens enable the precise calculation of sunrise
  542.           and sunset times for your location. This information can be
  543.           found in almanacs, or extrapolated from maps. Your local library
  544.           or city hall may also have the precise coordinates. If your
  545.           events don't require these functions, then don't worry about
  546.           them.
  547.  
  548.  
  549.           {LATITUDE d m}
  550.                Your LATITUDE in degrees (0...+/-90) and minutes (0...59).
  551.  
  552.                Example: LATITUDE 41d35m
  553.  
  554.  
  555.           {LONGITUDE d m }
  556.                Your longitude in degrees (0...+-180) and minutes (0...59).
  557.                Longitudes West of the prime meridian are positive, those
  558.                East of the prime meridian are negative. In the US, all
  559.                longitudes are positive.
  560.  
  561.                Example: LONGITUDE 81d20m
  562.  
  563.  
  564.           {TIMEZONE x}
  565.                Exact calculations depend on the local time. Use the
  566.                following table to determine your time zone.
  567.  
  568.                             Zone                     x
  569.                        ====================     =========
  570.                        Eastern Standard Time:        5
  571.                        Eastern Daylight Time:        4
  572.                        Central Standard Time:        6
  573.                        Central Daylight Time:        5
  574.                        Mountain Standard Time:       7
  575.                        Mountain Daylight Time:       6
  576.                        Pacific Standard Time:        8
  577.                        Pacific Daylight Time:        7
  578.  
  579.                Example: TIMEZONE 5
  580.           Notes:
  581.  
  582.           1) Since all three tokens in this group are required for sunrise
  583.              and sunset calculations, it is easier to include these tokens
  584.              in a file and invoke the XA utility in the file mode:
  585.  
  586.              Example: XA f=rise_set.cmd
  587.                   where the file "rise_set.cmd" contains the following
  588.                   commands:
  589.                     :
  590.                   LATITUDE 41d35m
  591.                   LONGITUDE 81d20m
  592.                   TIMEZONE 5
  593.                     :
  594.  
  595.  
  596.   XA Command Interpreter (Version 1.04)                               Page 12
  597.           2) Remember to change TIMEZONE to the value that's appropriate
  598.              during the Spring and Fall when the time is adjusted.
  599.  
  600.      4.2.4 Clock tokens
  601.  
  602.           {SYNCHRONIZE PC (EXACT)}
  603.                These tokens instruct the XA utility to set your computers
  604.                clock based on the current time retrieved from the CP290. It
  605.                will not affect the computers date.
  606.  
  607.                Example: XA "SYNCHRONIZE PC"
  608.  
  609.                Use the optional "EXACT" token to wait for the X10 time to
  610.                rollover to the next minute. This provides a synchronization
  611.                within 1 second, but forces you to wait for up to one minute
  612.                for this rollover to happen.
  613.  
  614.                Example: XA "SYNCHRONIZE PC EXACT"
  615.  
  616.           {SYNCHRONIZE X10 (EXACT)}
  617.                These tokens instruct the XA utility to set the time and day
  618.                of the CP290 internal clock based on the current time
  619.                retrieved from your computer.
  620.  
  621.                Example: XA "SYNCHRONIZE X10"
  622.  
  623.                Using "EXACT" will force XA to wait until the PC's clock
  624.                seconds counter rolls over from 59 to 00 ensuring a
  625.                synchronization of clocks to within 1 second, however you
  626.                may have to wait for up to 1 minute for this rollover to
  627.                happen.
  628.  
  629.                Example: XA "SYNCHRONIZE X10 EXACT"
  630.  
  631.           Notes:
  632.  
  633.           1) You might want to include the command:
  634.  
  635.                XA "SYNCHRONIZE PC"
  636.  
  637.              in your AUTOEXEC.BAT file to set your PC's internal clock if
  638.              your system lacks a on-board battery backed-up clock. Note
  639.              that this command will not set up the date since X10 does not
  640.              contain a real-time calendar.
  641.  
  642.           2) Use:
  643.                XA "SYNCHRONIZE PC"   or,
  644.                XA "SYNCHRONIZE X10"
  645.  
  646.              in your AUTOEXEC.BAT file if either your PC or CP290 do not
  647.              keep accurate time.
  648.  
  649.   XA Command Interpreter (Version 1.04)                               Page 13
  650.      4.2.5 Day tokens:
  651.  
  652.           Use of these tokens indicate a timed event, ie, the complete
  653.           command will be downloaded to the interface and stored there for
  654.           later activation.
  655.  
  656.           SUNDAY,    SUN
  657.           MONDAY,    MON
  658.           TUESDAY,   TUE
  659.           WEDNESDAY, WED
  660.           THURSDAY,  THU
  661.           FRIDAY,    FRI
  662.           SATURDAY,  SAT
  663.                These tokens specify the specific day of the event. Multiple
  664.                tokens may appear within a command.
  665.  
  666.                Example: XA "MONDAY FRIDAY A1 ON TIME 7:30 AM"
  667.  
  668.           WEEKENDS, WEEKEND
  669.                Event occurs on SATURDAY and SUNDAY
  670.  
  671.           WEEKDAYS, WEEKDAY
  672.                Event occurs MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY
  673.  
  674.           EVERYDAY
  675.                Event occurs MON TUE WED THU FRI SAT SUN
  676.  
  677.           TODAY
  678.                Event will occur today only at the specified time. It is
  679.                then deleted from the interface after midnight.
  680.  
  681.           TOMORROW
  682.                Event will occur tomorrow only at the specified time. It is
  683.                then deleted from the interface after midnight.
  684.  
  685.  
  686.           Notes:
  687.  
  688.  
  689.      4.2.6 Specific Date tokens:
  690.  
  691.           Since the CP-290 does not contain an on-board calendar, there is
  692.           no direct method of storing an event that occurs more than 1 week
  693.           away. However, XA has the ability to evaluate dates and as long
  694.           as XA is run at least once a week it can determine the
  695.           appropriate time to download the event. This feature allows you
  696.           specify an event weeks, months, or years in advance. In addition,
  697.           you can specify an event to occur on specific days of each month
  698.           (such as every 10th day of the month), or annually (every 4th of
  699.           July), or an event may be scheduled to trigger every day between
  700.           specific dates (such as Christmas and New Years).
  701.  
  702.           If you plug you computer into an Appliance module, you can have
  703.           the CP-290 turn your computer on automatically on a once-per-week
  704.           basis. By using POWERUP.EXE (supplied with this package) you can
  705.           have a new set of events automatically downloaded to the CP-290.
  706.  
  707.   XA Command Interpreter (Version 1.04)                               Page 14
  708.           Now you'll never forget to update your CP-290 - your computer
  709.           does it for automatically. This is what "automation" is all
  710.           about. Also, this method guarantees that specific dates will be
  711.           evaluated and events will be triggered at the proper time in the
  712.           future. See Section 7.0 on the Powerup utility for more details.
  713.  
  714.  
  715.      VERY IMPORTANT NOTE:
  716.  
  717.           When using the following DATE tokens, you should include the
  718.           "ERASE" token in your command file. ERASE will clear the entire
  719.           contents of the CP-290, removing all event information. The
  720.           reason you want to erase its memory is because once XA downloads
  721.           an event to the CP-290, it will remain there until it is deleted
  722.           or overwritten. The next time XA is run (next week) the event may
  723.           still remain and trigger itself again and again until it is
  724.           either manually deleted, or eventually overwritten by a new
  725.           event. ERASE ensures that the data is cleared and that the
  726.           interface will contain fresh information. Also, since all your
  727.           information is stored in a command file, the relavent information
  728.           will always be placed in the CP-290.
  729.  
  730.  
  731.  
  732.           {DATE mm/dd/yyyy}
  733.                Event occurs on specified date. You must specify the date in
  734.                the following format:
  735.  
  736.                     Month - 0, 1, or 2 digits (1 = January... 12 = December)
  737.                     Day   - 0, 1, or 2 digits
  738.                     Year  - 0, or 4 digits (1991 - NOT 91).
  739.  
  740.  
  741.                To specify module A5 to turn on July 4, 1992 at 5:00 pm:
  742.  
  743.                     A5 ON DATE 7/4/1992 TIME 5:00 PM
  744.  
  745.                You may omit fields which is the equivalent of specifying
  746.                any month, day, or year. Each field must be delineated by a
  747.                seperator, either a '/' or '-' character. For example, to
  748.                specify module A5 to turn on every 4th of July at sunset,
  749.                leave off the "yyyy" field:
  750.  
  751.                     DATE 7/4/ A5 ON SUNSET
  752.  
  753.                To specify module A5 to turn off on the 4th of every month
  754.                at 6:00 AM
  755.  
  756.                     DATE /4/ A5 OFF TIME 6:00 AM
  757.  
  758.  
  759.                Use DEFINE statements to clarify certain dates (see Section
  760.                4.2.8).
  761.  
  762.                     DEFINE CHRISTMAS_DAY DATE 12/25/
  763.                     A1 ON CHRISTMAS TIME 5:00 AM
  764.  
  765.   XA Command Interpreter (Version 1.04)                               Page 15
  766.  
  767.  
  768.           {DATE mm/dd/yyyy THRU mm/dd/yyyy}
  769.                Event occurs between two dates. Use the same conventions as
  770.                described above.
  771.  
  772.                If you will be going on vacation between July 1, 1992 and
  773.                July 17, 1992, and you want the bedroom lights (A3) turned
  774.                on and off in a random fashion during the evenings:
  775.  
  776.                     DATE 7/1/1992 thru 7/17/1992 ON A3 TIME 9:00 PM SECURITY
  777.                     DATE 7/1/1992 thru 7/17/1992 OFF A3 TIME 11:30 PM SECURITY
  778.  
  779.                Use DEFINE statements for clarification, and reduce typing
  780.                for multiple entries (note that both uppercase and lowercase
  781.                is used):
  782.  
  783.                     DEFINE Vacation DATE 7/1/1992 THRU 7/17/1992
  784.                     DEFINE BEDROOM_LIGHTS A3
  785.                     DEFINE ON_EVENING TIME 9:00 PM SECURITY
  786.                     DEFINE OFF_NIGHT TIME 11:30 PM SECURITY
  787.                          :
  788.                     Bedroom_Lights On_Evening Vacation
  789.                     Bedroom_Lights OFF_Evening Vacation
  790.  
  791.  
  792.  
  793.  
  794.      4.2.7 Time tokens:
  795.  
  796.           Use of these tokens indicate a timed event, ie, the complete
  797.           command will be downloaded to the interface and stored there for
  798.           later activation.
  799.  
  800.           {TIME hh:mm AM}
  801.           {TIME hh:mm PM}
  802.                Schedule event at a certain time.
  803.  
  804.                Example: XA "SUNDAY ON TIME 12:30 AM D1"
  805.  
  806.           SUNRISE
  807.           SUNSET
  808.                These tokens will calculate the sunrise or sunset for the
  809.                day token in the command. The use of these tokens also
  810.                requires the LATITUDE, LONGITUDE, and TIMEZONE tokens to be
  811.                included. Therefore, these tokens should be used in the file
  812.                mode.
  813.  
  814.                Example: MONDAY ON SUNSET D1
  815.  
  816.                If multiple day tokens appear in the command line, the
  817.                sunrise or sunset will be calculated for the last day token
  818.                that appears in the command line.
  819.  
  820.                Example: MONDAY TUESDAY WEDNESDAY ON SUNSET D1
  821.  
  822.  
  823.   XA Command Interpreter (Version 1.04)                               Page 16
  824.                If more accuracy is needed, then break each daily event into
  825.                its own command.
  826.  
  827.                Example: MONDAY ON SUNSET D1 EVENT 0
  828.                         TUESDAY ON SUNSET D1 EVENT 1
  829.                         WEDNESDAY ON SUNSET D1 EVENT 2
  830.  
  831.  
  832.           {OFFSET +-mm}
  833.                Push or postpone the scheduled event by up to 60 minutes.
  834.                This token is useful if you want to activate lights at dusk
  835.                rather than sunset, or to deactivate lights at dawn rather
  836.                than sunrise. The '+' sign is the default condition, you
  837.                must specify the '-' if needed.
  838.  
  839.  
  840.                Example: Turn on lights 30 minutes after sunset
  841.                     MONDAY ON SUNSET D1 EVENT 0 OFFSET 30
  842.  
  843.                     Turn lights off 45 minutes before sunrise
  844.                     MONDAY OFF SUNRISE D1 EVENT 1 OFFSET -45
  845.  
  846.                See Section 4.2.8 (Miscellaneous Tokens) for another way of
  847.                specifying DUSK or DAWN. This can be accomplished using the
  848.                "DEFINE" token. For example:
  849.  
  850.                     DEFINE DUSK SUNSET OFFSET 30
  851.                     DEFINE DAWN SUNRISE OFFSET -45
  852.                          :
  853.                     MONDAY ON DUSK D1 EVENT 0
  854.                     MONDAY OFF DAWN D1 EVENT 1
  855.  
  856.  
  857.   XA Command Interpreter (Version 1.04)                               Page 17
  858.  
  859.           NORMAL
  860.                This token activates the event at the specfied time. It is
  861.                the default mode, therefore it does not need to be
  862.                specified.
  863.  
  864.           SECURITY
  865.           RANDOM
  866.                This token allows the interface to randomly select the
  867.                activation time of the event. This activation occurs within
  868.                the hour of the programmed time. Therefore, if the
  869.                downloaded time was for 7:18 PM, actual activation time
  870.                could range from 7:00 PM through 7:59 PM. This mode provides
  871.                a security feature giving your lighting a more lived-in
  872.                look.
  873.  
  874.                Example: XA "A1 ON TIME 7:30 PM SECURITY EVERYDAY"
  875.                         XA "A1 ON TIME 7:30 PM RANDOM EVERYDAY"
  876.  
  877.  
  878.      4.2.8 Miscellaneous tokens:
  879.  
  880.           {BASECODE x}
  881.                These tokens change the base housecode of the interface
  882.                WITHOUT losing the data stored in the interface. Prior to
  883.                changing the housecode, a complete upload of all events
  884.                stored in the interface is performed. The housecode is
  885.                changed, then all events are downloaded back into the
  886.                interface. Valid housecodes are A...P.
  887.  
  888.                Example: XA "BASECODE D"
  889.  
  890.                During upload, the interface sends all 128 possible events
  891.                that are stored in its memory. If an event actually exists,
  892.                then an up arrow is displayed, otherwise a dot (·) is
  893.                displayed. During download, a down arrow is displayed.
  894.                Downloads will take significantly longer due to the overhead
  895.                involved with sending synch bytes for each event.
  896.  
  897.           {PORT COMx}
  898.                These tokens allow you to specify which comm port the
  899.                interface is attached to. Legal ports are:
  900.  
  901.                   COM1 = I/O address 0x3F8   Interrupt 4
  902.                   COM2 =      "      0x2F8       "     3
  903.                   COM3 =      "      0x3E8       "     4
  904.                   COM4 =      "      0x2E8       "     3
  905.  
  906.                These tokens were intended to be placed in command files.
  907.                They will take precedence over the 'c=x' command line
  908.                argument (see section 3).
  909.  
  910.                Example line in a command file:
  911.                     PORT COM3
  912.  
  913.  
  914.   XA Command Interpreter (Version 1.04)                               Page 18
  915.                If your port assignments do not match those in the above
  916.                table, then use the command line parameters [i=x] and
  917.                [o=xxx], or the file mode tokens "IRQ" and "IO" (see below)
  918.                to customize the communication characteristics.
  919.  
  920.           {IRQ=x}
  921.                Use these tokens in your command file only if your
  922.                communications port uses a different IRQ level than what is
  923.                "standard" (see the above table for the default
  924.                assignments). The default IRQ level is 4. If your serial
  925.                port uses IRQ 5, then use the following line in your command
  926.                file:
  927.  
  928.                     IRQ=5
  929.  
  930.                These tokens were intended to be placed in command files.
  931.                They will take precedence over the 'i=x' command line
  932.                argument (see section 3).
  933.  
  934.           {IO=x}
  935.                This option allows you to select a different IO address from
  936.                the default 3F8 hex. If your serial port is setup for 2E8
  937.                hex, then use the following line in your command file:
  938.  
  939.                     IO=2E8
  940.  
  941.                These tokens were intended to be placed in command files.
  942.                They will take precedence over the 'o=x' command line
  943.                argument (see section 3).
  944.  
  945.  
  946.           {DEFINE x z}
  947.                These tokens were designed to be used in command files. They
  948.                allow you to substitute several tokens into a single token
  949.                of your choice. They help to make command files more
  950.                readable. Up to 50 custom tokens are allowed. For example,
  951.                you can assign a token "CHRISTMAS_ON" to an equivalent group
  952.                of tokens "HOUSE A UNIT 4 ON TIME 8:00 PM EVERYDAY" as
  953.                follows:
  954.  
  955.                DEFINE CHRISTMAS_ON HOUSE A UNIT 4 ON TIME 8:00 PM EVERYDAY
  956.                       ============ =======================================
  957.                            x                          z
  958.  
  959.                The 'x' and 'y' strings can be up to 60 characters each.
  960.                Notice that the 'x' portion uses underscore characters (_)
  961.                to separate the words but to keep the string contiguous.
  962.                This is important because the XA interpreter looks for a
  963.                SPACE character to separate the 'x' and 'y' components.
  964.  
  965.                Later in the command file, you can use the following command
  966.                to activate your Christmas lights:
  967.  
  968.                     CHRISTMAS_ON
  969.  
  970.   XA Command Interpreter (Version 1.04)                               Page 19
  971.                Internally, XA will convert this string to its equivalent:
  972.                     HOUSE A UNIT 4 ON TIME 8:00 PM EVERYDAY
  973.  
  974.                More Examples:
  975.                          :
  976.                     DEFINE PLANT_GROW_LIGHTS A8
  977.                     DEFINE OUTSIDE_LIGHTS A1
  978.                     DEFINE ALL_ON HOUSE A UNIT ALL ON
  979.                          :
  980.                     PLANT_GROW_LIGHTS ON TIME 6:00 AM EVERYDAY
  981.                     PLANT_GROW_LIGHTS OFF TIME 12:00 AM EVERYDAY
  982.                          :
  983.                     OUTSIDE_LIGHTS OFF SUNRISE EVERYDAY
  984.                          :
  985.                     ALL_ON SUNDAY TIME 7:30 PM
  986.  
  987.                The use of DEFINES is helpful if you want to the XA utilty
  988.                monitor the CP290 for events as they occur. See Section 6 on
  989.                Monitoring.
  990.  
  991.                **** Important Note ****
  992.                DEFINEs must be declared before being used. The following
  993.                would cause an error message because the DEFINE was placed
  994.                out of order:
  995.  
  996.                     OUTSIDE_LIGHTS ON SUNSET EVERYDAY
  997.                     DEFINE OUTSIDE_LIGHTS A1
  998.  
  999.           {EVENT xxx}
  1000.                The CP290 can store up to 128 events in its memory. Each
  1001.                event occupies fixed locations in memory. When you download
  1002.                events to the interface, an event number will be assigned to
  1003.                the command. The first event will have an event number of 0,
  1004.                the second will be 1, etc. Therefore, any event that was
  1005.                previously stored at those locations will be overwritten.
  1006.                The token {EVENT xxx} allows you to override the number
  1007.                assigned to this command.
  1008.  
  1009.                If you normally use one command file then the need to use
  1010.                this token is probably unnecessary. If multiple command
  1011.                files are used, then this token is helpful.
  1012.  
  1013.                Example: MON ON SUNSET D1 EVENT 100
  1014.                         TUE ON SUNSET D1 EVENT 101
  1015.                         WED ON SUNSET D1 EVENT 102
  1016.  
  1017.  
  1018.           {CLEAR EVENT xxx}
  1019.                These tokens delete the specified event from the computer
  1020.                interface. See description for EVENT xxx above. Only 1 event
  1021.                may be cleared per command.
  1022.  
  1023.                Example: XA "CLEAR EVENT 100" "CLEAR EVENT 101"
  1024.  
  1025.   XA Command Interpreter (Version 1.04)                               Page 20
  1026.           ERASE
  1027.                This token erases all events from the CP-290 memory. Use
  1028.                this token when specific dates are present in your command
  1029.                file. This way, once the date has come and gone, it will be
  1030.                deleted from the CP-290 memory automatically.
  1031.  
  1032.           DIAGNOSE
  1033.                This token triggers the X10 diagnostic routine. You will be
  1034.                informed of the results after a few seconds.
  1035.  
  1036.                   ┌────────────────────────────────────────────┐
  1037.                   │             *** WARNING ***:               │
  1038.                   │                                            │
  1039.                   │  The diagnostics on the CP290 will         │
  1040.                   │  destroy all the event information stored  │
  1041.                   │  in its memory. Make sure you have all     │
  1042.                   │  the event information contained in a      │
  1043.                   │  command file so that you can restore      │
  1044.                   │  this data once the diagnostics have       │
  1045.                   │  completed.                                │
  1046.                   └────────────────────────────────────────────┘
  1047.  
  1048.           MONITOR
  1049.                This token informs XA to continuously monitor the
  1050.                communications port for any messages sent by the CP290 when
  1051.                it executes a stored event. See Section 6 - Monitoring and
  1052.                Logging Events for more information.
  1053.  
  1054.           LOG
  1055.                This token appends the monitored information in the file
  1056.                XA.LOG. You must also specify either MONITOR in the command
  1057.                file or +m on the command line for this action to occur. See
  1058.                Section 6 - Monitoring and Logging Events for more
  1059.                information.
  1060.  
  1061.  
  1062. 5)  Command files
  1063.  
  1064.      Since the CP290 is only capable of storing a single weeks worth of
  1065.      events, command files were created to allow easy update of the events
  1066.      that may need to revised due to ever-changing conditions, such as
  1067.      sunrise and sunset times. Also specific date information may be
  1068.      contained within this file. XA has the capability to interpret these
  1069.      dates and update the CP-290 accordingly.
  1070.  
  1071.      Command files should only be created with an editor or word processor
  1072.      that saves files in pure ascii format. Any extraneous characters or
  1073.      control codes will cause the XA interpreter to ignore your commands.
  1074.  
  1075.      You may place comments in your command file. A comment is delineated
  1076.      by the pound sign character '#'. This character must appear in the
  1077.      first column of the line.
  1078.  
  1079.      # This is an example comment.
  1080.  
  1081.   XA Command Interpreter (Version 1.04)                               Page 21
  1082.      Comments are ignored by the interpreter. Therefore, comments can be
  1083.      placed in front of commands you do not want to download to the
  1084.      interface at this time. For example, you can hide your Christmas
  1085.      lighting commands from the interpreter once the holidays are over:
  1086.  
  1087.      #DEFINE XMAS HOUSE A UNIT 2
  1088.      #XMAS ON EVERYDAY SUNSET OFFSET 20
  1089.      #XMAS OFF WEEKDAYS TIME 10:00 PM
  1090.      #XMAS OFF WEEKENDS TIME 12:00 AM
  1091.  
  1092.           Hint: Use the DATE tokens to to ensure that your lighting is only
  1093.           activated at certain times of the year.
  1094.  
  1095.      Blank lines are permitted in the command file.  These allow you to
  1096.      group similar events together.
  1097.  
  1098.      See the sample command file "XA.CMD" (included in this package) I use
  1099.      for automating events in my home.
  1100.  
  1101.      XA defaults to reading a command file if there are no commands in the
  1102.      in the command line. The default command file is called 'XA.CMD'. You
  1103.      may keep a number of command files around. To use a different command
  1104.      file, use the 'f=' parameter when starting XA. For example, if you
  1105.      wanted to execute the commands found in a file called 'MONITOR.CMD',
  1106.      you would start the XA utilty as:
  1107.  
  1108.           XA f=MONITOR.CMD
  1109.  
  1110.      The next section discusses the use of monitoring and logging events,
  1111.      and uses a command file called MONITOR.CMD to show how this is done.
  1112.  
  1113.  
  1114. 6)  Monitoring and Logging events
  1115.  
  1116.      The CP290 sends a message to your computer after it executes an event
  1117.      stored in its memory. Most software packages (including X10.EXE
  1118.      shipped with the CP-290) will ignore these messages. XA allows you to
  1119.      monitor as well as log these events if desired.
  1120.  
  1121.      XA will enter its monitor mode after all other commands have been
  1122.      processed. You can activate the monitor feature in two ways, as a
  1123.      command, or as a command line parameter.
  1124.  
  1125.      Command example:
  1126.           XA "MONITOR"
  1127.  
  1128.      Command line parameter example:
  1129.           XA +m
  1130.  
  1131.      In the first example, XA "MONITOR",  the command MONITOR informs XA to
  1132.      watch for any transmissions from CP290. The second example use command
  1133.      line options and has the same effect, but remember that if no commands
  1134.      were actually present, the XA utility will try to open the command
  1135.      file 'XA.CMD' and process the commands found in there. If you don't
  1136.      want that to happen, use the '-e' option which tells XA not to execute
  1137.      (or download) those commands. See the next example:
  1138.  
  1139.   XA Command Interpreter (Version 1.04)                               Page 22
  1140.  
  1141.           XA +m -e
  1142.  
  1143.  
  1144.      When XA begins to monitor, it displays the following message:
  1145.  
  1146.           Monitor events. Press <ESC> when finished...
  1147.  
  1148.      XA waits for a message from the CP290. You may exit this function by
  1149.      pressing the <ESC> key.
  1150.  
  1151.      When the CP290 executes an event it sends a message to the PC with the
  1152.      following information; the HOUSE code, UNIT code, and the event
  1153.      FUNCTION (ON, OFF, DIM). XA takes this information and adds the time
  1154.      and date information from your PC's clock and prints the following
  1155.      message:
  1156.  
  1157.           Sun Mar 24 07:00:13 1991 HOUSE A UNIT 5 ON
  1158.  
  1159.      This message is semi-useful; it describes what just occurred but if
  1160.      you forgot what was addressed as HOUSE A UNIT 5 then the message is
  1161.      pretty meaningless. You can give this module a more descriptive name
  1162.      by using a command file that includes DEFINE statments for all your
  1163.      modules. Below is sample command file (MONITOR.CMD) that describes
  1164.      what we're talking about:
  1165.  
  1166.           DEFINE Porch/Garage_Lights HOUSE A UNIT 1
  1167.           DEFINE Plant_Grow_Lights HOUSE A UNIT 5
  1168.           DEFINE Family_Room_TV HOUSE A UNIT 6
  1169.           DEFINE Basement_Computer HOUSE A UNIT 7
  1170.  
  1171.      Now when a message is broadcast by the CP290, a scan of all the
  1172.      definitions will be made to see if the HOUSE and UNIT codes match. If
  1173.      so, then the description will be used instead of the codes. Therefore,
  1174.      you would get the following message on your screen.
  1175.  
  1176.           Sun Mar 24 07:00:13 1991 (A6) Plant_Grow_Lights ON
  1177.           Sun Mar 24 08:43:13 1991 (A1) Porch/Garage_Lights ON
  1178.  
  1179.      In the above messages, a combined House and Unit code (A6) is
  1180.      automatically provided - you don't have to include it as part of the
  1181.      DEFINE token.
  1182.  
  1183.      Also, the DEFINE must include BOTH the HOUSE and UNIT tokens when
  1184.      describing an object. You can not use the short cut method, such as:
  1185.  
  1186.           DEFINE Porch/Garage_Lights A 1             <=== will NOT work.
  1187.           DEFINE Porch/Garage_Lights HOUSE A UNIT 1  <=== will work.
  1188.  
  1189.      If different modules are controlled by a single event, the module
  1190.      which has the lowest UNIT code will be displayed. Therefore, if
  1191.      modules C9 and C10 are programmed as a single event, only C9 will be
  1192.      displayed.
  1193.  
  1194.   XA Command Interpreter (Version 1.04)                               Page 23
  1195.      Monitoring is useful when running on a multitasking system. It has
  1196.      been tested as a background task under Windows 3.0 (386 enhanced
  1197.      mode). It should work for Desqview as well.
  1198.  
  1199.  
  1200.      You can also log these events to a file called XA.LOG by specifying
  1201.      either the LOG token in a command file or the [+l] option on the
  1202.      command line. Each event reported by the CP290 will be displayed on
  1203.      the screen, and also be appended to the file XA.LOG. By appending the
  1204.      information, all previous events will be saved.
  1205.  
  1206.      For logging to work, you must have invoked the monitoring feature by
  1207.      specifying either MONITOR in the command file or [+m] on the command
  1208.      line.
  1209.  
  1210.  
  1211.  
  1212.  
  1213. 7)  POWERUP Utility
  1214.  
  1215.      The POWERUP utility is provided in this package to help you perform
  1216.      unattended, and automatic event downloads to the interface if your
  1217.      computer is controlled by an Appliance module. POWERUP should be
  1218.      placed in your AUTOEXEC.BAT file so it will always be executed after
  1219.      your computer boots. This way, it can decide whether or not it's time
  1220.      to perform any updates to your interface, and it prevents you from
  1221.      needlessly sending commands when you don't need to.
  1222.  
  1223.      The POWERUP command has the following form:
  1224.  
  1225.           POWERUP d=day [[d=day]...] s=hh:mm e=hh:mm
  1226.  
  1227.      The command line parameters may appear in order, and they must all be
  1228.      present:
  1229.                d=day     - This is the text string for the day you want to
  1230.                            check for. Legal strings are: MONDAY, TUESDAY,
  1231.                            WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,
  1232.                            WEEKDAYS, WEEKENDS, and EVERYDAY.
  1233.  
  1234.                s=hh:mm   - This is the "window" start time. Hours must be
  1235.                            entered in 24 hour format only.
  1236.  
  1237.                e=hh:mm   - This is the "window" end time. Again, 24 hour
  1238.                            format is required.
  1239.  
  1240.                Example: POWERUP d=SUNDAY s=2:55 e=3:05
  1241.  
  1242.      If the "day" specified matches the day reported by DOS, and the time
  1243.      reported by DOS falls within the specified "window", then POWERUP will
  1244.      return an ERRORLEVEL of 1, otherwise a 0 is returned. Therefore, by
  1245.      placing the proper batch file commands in AUTOEXEC.BAT, you can now
  1246.      execute a variety of functions at certain times.
  1247.  
  1248.      You may enter multiple 'd=day' parameters. For instance, to have
  1249.      Powerup check for a window begining at NOON and lasting until 1:00pm
  1250.      every MONDAY, WEDNESDAY, and FRIDAY, you would enter:
  1251.  
  1252.   XA Command Interpreter (Version 1.04)                               Page 24
  1253.  
  1254.           POWERUP d=MONDAY d=WEDNESDAY d=FRIDAY s=12:00 e=13:00
  1255.           if errorlevel == 1 echo It's time!
  1256.  
  1257.      If your computer is controlled by an Appliance module, you can now
  1258.      automatically download revised event times. In addition, you can even
  1259.      perform other actvities such as backups, communications, etc. without
  1260.      being at your computer. I perform my backups and event revisons on
  1261.      Sunday mornings at 3:00 AM. This way, I never forget about backing up
  1262.      and now I don't have to sit around and wait for the process to finish.
  1263.      See the sample AUTOEXEC.BAT file included in this package that I use
  1264.      to accomplish this task.
  1265.  
  1266.  
  1267. 8)  License Agreement and Registration
  1268.  
  1269.      You may make copies of this program, manual, and other files and give
  1270.      it to your friends, upload it to bulletin boards, or include it in the
  1271.      library of a non-profit computer club.
  1272.  
  1273.      I expressly forbid any for-profit venture from selling this software
  1274.      and documentation, either separately or as part of a "library"
  1275.      diskette, unless written permission is granted.
  1276.  
  1277.      I disclaim any liability for its use, misuse, or abuse, including any
  1278.      direct or indirect actions. The user accepts full responsibility for
  1279.      his or her use of this program.
  1280.  
  1281.      SUPPORT SHAREWARE!
  1282.      If you find this software has any value for you, please send a
  1283.      contribution. Contributions of $20 or more will entitle you to (2)
  1284.      updates of this program as new enhnacements are added. 
  1285.  
  1286.      Please share this software with others.
  1287.  
  1288.      Your suggestions are always welcome. Send any comments to the address
  1289.      given below, or you may contact me on Prodigy, or America Online.
  1290.  
  1291.           Bruce Christensen
  1292.           6594 Hudson Ave.
  1293.           Mentor, OH. 44060-4545
  1294.  
  1295.           Prodigy ID:  MHNC39A
  1296.           America Online: AuggieBen
  1297.  
  1298.      This software will be uploaded to the PC-OHIO BBS as new updates
  1299.      become available. Their number is: (216) 381-3320.
  1300.  
  1301.  
  1302.  
  1303. X-10 is a registered trademark of X-10 (USA) Inc.
  1304. Desqview is a trademark of Quarterdeck Office Systems.
  1305. Windows is a trademark of Microsoft Corporation.
  1306. Prodigy is a registered service mark and trademark of Prodigy Services Co.
  1307. America Online is a registered service mark of Quantum Computer Services, Inc.
  1308.  
  1309. 
  1310.